AWS ParallelCluster で Slurm Accounting の設定方法を解説
AWS ParallelCluster で Slurm Accounting を設定すると、ジョブの実行履歴を保存できるようになります。本記事では、AWS ParallelCluster で Slurm Accounting を有効にする方法を解説します。
準備
Slurm Accounting を設定する前に以下の 3 つの準備作業が必要です。
- RDS 用のセキュリティグループ作成
- RDS の作成
- Secrets Manager で RDS のパスワード管理
RDS 用のセキュリティグループ作成
- EC2 コンソールからセキュリティグループを新規作成
- インバウンドルールで、ヘッドノードのサブネットまたは VPC の CIDR から許可
- 後ほど作成したセキュリティグループを RDS インスタンスに割り当てる
RDS の作成
Slurm Accounting のデータを保存するために、本記事では Amazon RDS for MySQL を使用します。ここでは Slurm Accounting に特有の注意点のみを記載します。
RDS の作成時には以下の点に注意してください。
[重要] セキュリティグループ
事前に作成済みの RDS 用のセキュリティグループを割当てます。
[重要] DB パスワード
ユーザー名パスワードを手動で設定します。
DB サブネットグループ
クラスターと同じ VPC 内の適切なサブネットを指定します。
パラメータグループ
新規にパラメータグループを作成します。
RDS 作成後
補足説明
DB 選定については以下のブログを参考にしてください。
RDS の基本的な作成手順については以下のブログを参考にしてください。
Secrets Manager の設定
RDS のパスワードを AWS Secrets Manager に保存します。以下の手順に従ってください。
- AWS Secrets Manager コンソールを開く
- 「新しいシークレットを保存」を選択
- シークレットタイプとしてその他のタイプのシークレットを選択
- プレーンテキストとして RDS のパスワードを入力
- 適切な名前を付けてシークレットを保存
準備完了です。
ParallelClusterの設定
準備が整ったら、ParallelCluster の設定ファイルに Slurm Accounting の設定を追加します。
設定ファイルの例
Scheduling:
Scheduler: slurm # Slurm を指定
SlurmSettings:
ScaledownIdletime: 10
# --- Slurm Accounting 設定 ---
Database:
Uri: slumdb.hogehoge.ap-northeast-1.rds.amazonaws.com:3306 # RDS のエンドポイントとデータベース名とポート番号を指定
UserName: admin # RDS のユーザー名を指定
PasswordSecretArn: arn:aws:secretsmanager:ap-northeast-1:123456789012:secret:slurmdb-hoge # Secrets Manager の ARN を指定
クラスター作成(pclsuter create-cluter
コマンド実行)後、ヘッドノードが RDS へ正常に接続できれば問題なく必要な設定が入りクラスターが利用可能になります。
動作確認とトラブルシューティング
動作確認
クラスター作成後、ヘッドノードにログインしてsacct
コマンドを実行します。正常に設定されていれば下記のような出力が表示されます。
$ sacct
JobID JobName Partition Account AllocCPUS State ExitCode
------------ ---------- ---------- ---------- ---------- ---------- --------
新規クラスターの場合、ジョブ履歴がないため出力は空になります。テストジョブを実行して再確認することをお勧めします。
トラブルシューティング
設定に問題がある場合は、以下の点を確認してください。
- RDS のセキュリティグループ設定
- Secrets Manager のパスワード設定
- ParallelCluster 設定ファイル
詳細なトラブルシューティング手順については、以下の記事を参照してください。
まとめ
本記事では、AWS ParallelCluster で Slurm Accounting を設定する方法を解説しました。
おわりに
ParallelCluster が Slurm Accounting を v3.3.0 でサポートしてくれる前は以下の設定が必要でした。だいぶ設定の手間が減りましたね。